import {util} from '../utils/util'
import Cookies from 'js-cookie';
import api from '../api/apis';

import {
  UPDATE_PAGE_TITLE,
  UPDATE_TOKEN,
  UPDATE_ROLES,
} from './components/consts'

const module = {
  state: {
    // 页面标题设置
    pageTitle: '首页',
    token: "", // 登录授权
    roles: "", // 登录用户权限（不同权限走不同的路由：通用渠道商、活动渠道商、微信渠道商、我们页面对方收款、对方页面我们收款）
    name: "",// 登录用户名
    avatar: "",// 登录用户头像
  },
  mutations: {
    /*title*/
    [UPDATE_PAGE_TITLE](state, type) {
      state.pageTitle = type;
    },
    /*token*/
    [UPDATE_TOKEN](state, type) {
      state.token = type;
    },
    /*roles*/
    [UPDATE_ROLES](state, type) {
      state.roles = type;
    },
  },
  actions: {
    // 登录
    Login({commit}, userInfo) {
      return new Promise((resolve, reject) => {
      //
      //   //调用后端登陆接口
      //   api.shiroApi.loginIn(userInfo)
      //     .then((data) => {
      //       console.log('success:', data);
      //
      //       if (data && data.data) {
      //         let json = data.data;
      //         if (json.status === 'SUCCESS') {
      //
      //           debugger;
      //           Cookies.set(UPDATE_TOKEN, json.data.userInfo.token, 0);
      //           util.setSessionStorage(UPDATE_TOKEN, json.data.userInfo.token);
      //           commit(UPDATE_TOKEN, json.data.userInfo.token);
      //
      //           util.setSessionStorage('username', json.data.userInfo.userName);
      //           // util.setSessionStorage('avatar', json.data.userInfo.avatar);
      //           util.setSessionStorage('lev', json.data.sysRoleVoList);
      //
      //           //存入菜单,渲染菜单
      //           commit("add_Menus", json.data.sysMenuVoList);
      //           //动态设置路由
      //           commit("add_Routes", json.data.sysMenuVoList);
      //
      //         }
      //       }
      //
      //       resolve(data);
      //     }).catch((err) => {
      //       console.log('error:', err);
      //       reject(err);
      //     });
      });
    },
    // 登出
    LogOut({commit, state}) {
      return new Promise((resolve, reject) => {

        commit(UPDATE_TOKEN, '');
        util.removeSessionStorage(UPDATE_TOKEN);
        Cookies.remove(UPDATE_TOKEN);

        resolve();
      });
    },
  }
};

import addMenues_store from './components/addMenus.js'
import addRoutes_store from './components/addRoutes.js'

export default {
  menu: addMenues_store,
  route: addRoutes_store,
  module: module
}
